package com.example.demo.entity;


import javax.persistence.*;

import com.example.demo.util.SequenceUtil;

import tk.mybatis.mapper.annotation.KeySql;

@Table(name = "app_login_user")
public class LoginUser extends BaseEntity{
    /**
     * 唯一主键
     */
    @Id
    @Column(name = "user_id")
    @KeySql(genId = SequenceUtil.class)
    private Long userId;


    /**
     * 用户昵称
     */
    @Column(name = "user_nikename")
    private String userNikename;

    /**
     * 用户头像信息
     */
    @Column(name = "user_head_portrait")
    private String userHeadPortrait;

    /**
     * 用户code
     */
    @Column(name = "user_code")
    private String userCode;

    /**
     * 用户密码
     */
    @Column(name = "user_pass")
    private String userPass;

    /**
     * 手机号码
     */
    @Column(name = "user_mobile")
    private String userMobile;

    /**
     * 用户邮箱
     */
    @Column(name = "user_email")
    private String userEmail;

    /**
     * 客户端唯一标识
     */
    @Column(name = "app_uuid")
    private String appUuid;

    /**
     * 性别
     */
    @Column(name = "user_sex")
    private Integer userSex;

    /**
     * 用户注册来源 (0->iphone, 1->ipad, 2->android, 3->微信, 4->h5, 5->网站)
     */
    @Column(name = "user_source")
    private Integer userSource;

    /**
     * 第三方登录来源 (0->手机, 1->微信, 2->qq)
     */
    @Column(name = "social_source")
    private Integer socialSource;

    /**
     * token
     */
    @Column(name = "user_token")
    private String userToken;

    /**
     * openid
     */
    @Column(name = "open_id")
    private String openId;

    /**
     * 状态 (0：正常，1：停用，2：禁用，3：密码错误锁定4：用户注销5：其他锁定状态)
     */
    @Column(name = "user_status")
    private Integer userStatus;

    /**
     * 乐观锁
     */
    @Column(name = "revision")
    private Integer revision;


    /**
     * 获取唯一主键
     *
     * @return user_id - 唯一主键
     */
    public Long getUserId() {
        return userId;
    }

    /**
     * 设置唯一主键
     *
     * @param userId 唯一主键
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 获取用户昵称
     *
     * @return user_nikename - 用户昵称
     */
    public String getUserNikename() {
        return userNikename;
    }

    /**
     * 设置用户昵称
     *
     * @param userNikename 用户昵称
     */
    public void setUserNikename(String userNikename) {
        this.userNikename = userNikename;
    }

    /**
     * 获取用户头像信息
     *
     * @return user_head_portrait - 用户头像信息
     */
    public String getUserHeadPortrait() {
        return userHeadPortrait;
    }

    /**
     * 设置用户头像信息
     *
     * @param userHeadPortrait 用户头像信息
     */
    public void setUserHeadPortrait(String userHeadPortrait) {
        this.userHeadPortrait = userHeadPortrait;
    }

    /**
     * 获取用户code
     *
     * @return user_code - 用户code
     */
    public String getUserCode() {
        return userCode;
    }

    /**
     * 设置用户code
     *
     * @param userCode 用户code
     */
    public void setUserCode(String userCode) {
        this.userCode = userCode;
    }

    /**
     * 获取用户密码
     *
     * @return user_pass - 用户密码
     */
    public String getUserPass() {
        return userPass;
    }

    /**
     * 设置用户密码
     *
     * @param userPass 用户密码
     */
    public void setUserPass(String userPass) {
        this.userPass = userPass;
    }

    /**
     * 获取手机号码
     *
     * @return user_mobile - 手机号码
     */
    public String getUserMobile() {
        return userMobile;
    }

    /**
     * 设置手机号码
     *
     * @param userMobile 手机号码
     */
    public void setUserMobile(String userMobile) {
        this.userMobile = userMobile;
    }

    /**
     * 获取用户邮箱
     *
     * @return user_email - 用户邮箱
     */
    public String getUserEmail() {
        return userEmail;
    }

    /**
     * 设置用户邮箱
     *
     * @param userEmail 用户邮箱
     */
    public void setUserEmail(String userEmail) {
        this.userEmail = userEmail;
    }

    /**
     * 获取客户端唯一标识
     *
     * @return app_uuid - 客户端唯一标识
     */
    public String getAppUuid() {
        return appUuid;
    }

    /**
     * 设置客户端唯一标识
     *
     * @param appUuid 客户端唯一标识
     */
    public void setAppUuid(String appUuid) {
        this.appUuid = appUuid;
    }

    /**
     * 获取性别
     *
     * @return user_sex - 性别
     */
    public Integer getUserSex() {
        return userSex;
    }

    /**
     * 设置性别
     *
     * @param userSex 性别
     */
    public void setUserSex(Integer userSex) {
        this.userSex = userSex;
    }

    /**
     * 获取用户注册来源 (0->iphone, 1->ipad, 2->android, 3->微信, 4->h5, 5->网站)
     *
     * @return user_source - 用户注册来源 (0->iphone, 1->ipad, 2->android, 3->微信, 4->h5, 5->网站)
     */
    public Integer getUserSource() {
        return userSource;
    }

    /**
     * 设置用户注册来源 (0->iphone, 1->ipad, 2->android, 3->微信, 4->h5, 5->网站)
     *
     * @param userSource 用户注册来源 (0->iphone, 1->ipad, 2->android, 3->微信, 4->h5, 5->网站)
     */
    public void setUserSource(Integer userSource) {
        this.userSource = userSource;
    }

    /**
     * 获取第三方登录来源 (0->手机, 1->微信, 2->qq)
     *
     * @return social_source - 第三方登录来源 (0->手机, 1->微信, 2->qq)
     */
    public Integer getSocialSource() {
        return socialSource;
    }

    /**
     * 设置第三方登录来源 (0->手机, 1->微信, 2->qq)
     *
     * @param socialSource 第三方登录来源 (0->手机, 1->微信, 2->qq)
     */
    public void setSocialSource(Integer socialSource) {
        this.socialSource = socialSource;
    }

    /**
     * 获取token
     *
     * @return user_token - token
     */
    public String getUserToken() {
        return userToken;
    }

    /**
     * 设置token
     *
     * @param userToken token
     */
    public void setUserToken(String userToken) {
        this.userToken = userToken;
    }

    /**
     * 获取openid
     *
     * @return open_id - openid
     */
    public String getOpenId() {
        return openId;
    }

    /**
     * 设置openid
     *
     * @param openId openid
     */
    public void setOpenId(String openId) {
        this.openId = openId;
    }

    /**
     * 获取状态 (0：正常，1：停用，2：禁用，3：密码错误锁定4：用户注销5：其他锁定状态)
     *
     * @return user_status - 状态 (0：正常，1：停用，2：禁用，3：密码错误锁定4：用户注销5：其他锁定状态)
     */
    public Integer getUserStatus() {
        return userStatus;
    }

    /**
     * 设置状态 (0：正常，1：停用，2：禁用，3：密码错误锁定4：用户注销5：其他锁定状态)
     *
     * @param userStatus 状态 (0：正常，1：停用，2：禁用，3：密码错误锁定4：用户注销5：其他锁定状态)
     */
    public void setUserStatus(Integer userStatus) {
        this.userStatus = userStatus;
    }

    /**
     * 获取乐观锁
     *
     * @return revision - 乐观锁
     */
    public Integer getRevision() {
        return revision;
    }

    /**
     * 设置乐观锁
     *
     * @param revision 乐观锁
     */
    public void setRevision(Integer revision) {
        this.revision = revision;
    }


    
    /**
     * 手机验证
     */
    @Transient
    private String code;

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}
    
}